#ifndef __RECORD_H
#define __RECORD_H

#include <Windows.h>
#include <MMSystem.h>
#include <iostream>
#include <vector>
#include <string>

#pragma comment(lib, "winmm.lib")

using namespace std;

typedef short dataType;

class Record
{
public:
	Record();
	~Record();
	void checkWavInDevs();
	void setWaveFormat(unsigned short recChannel, unsigned long nSamplesPerSec, unsigned short wBitsPerSample);
	void startAudioIn();
	bool addInputBufferToQueue(int nIndex);
	void stopAudioIn();


private:
	WAVEFORMATEX wavFormat;

};

void CALLBACK waveInProc(HWAVEIN hwi,
	UINT uMsg,
	DWORD_PTR dwInstance,
	DWORD_PTR dwParam1,
	DWORD_PTR dwParam2);
#endif